/*
 * @Author: lixb
 * @Date: 2020-09-03 16:39:22
 * @LastEditTime: 2020-09-03 16:48:50
 * @Descripttion:得到本周、上周、下周的起始、结束日期
 */
export function getMonday(type, dates) {
  var now = new Date();
  var nowTime = now.getTime();
  var day = now.getDay();
  var longTime = 24 * 60 * 60 * 1000;
  var n = longTime * 7 * (dates || 0);
  if (type == 's') {
    var dd = nowTime - (day - 1) * longTime + n;
  }
  if (type == 'e') {
    var dd = nowTime + (7 - day) * longTime + n;
  }
  dd = new Date(dd);
  var y = dd.getFullYear();
  var m = dd.getMonth() + 1;
  var d = dd.getDate();
  m = m < 10 ? '0' + m : m;
  d = d < 10 ? '0' + d : d;
  var day = y + '-' + m + '-' + d;
  return day;
}
// getMonday(type,dates)  //type为字符串类型，有两种选择，"s"代表开始,"e"代表结束，dates为数字类型，不传或0代表本周，-1代表上周，1代表下周
// getMonday("s",1)  //得到下周一的yyyy-mm-dd格式日期
// getMonday("e",1)  //得到下周日的yyyy-mm-dd格式日期

/**
 * @Author: lixb
 * @Date: 2020-09-03 16:40:06
 * @msg: 得到本月、上月、下月的起始、结束日期
 */
export function getMonth(type, months) {
  var d = new Date();
  var year = d.getFullYear();
  var month = d.getMonth() + 1;
  if (Math.abs(months) > 12) {
    months = months % 12;
  }
  if (months != 0) {
    if (month + months > 12) {
      year++;
      month = (month + months) % 12;
    } else if (month + months < 1) {
      year--;
      month = 12 + month + months;
    } else {
      month = month + months;
    }
  }
  month = month < 10 ? '0' + month : month;
  var firstday = year + '-' + month + '-' + '01';
  var lastday = '';
  if (
    month == '01' ||
    month == '03' ||
    month == '05' ||
    month == '07' ||
    month == '08' ||
    month == '10' ||
    month == '12'
  ) {
    lastday = year + '-' + month + '-' + 31;
  } else if (month == '02') {
    if ((year % 4 == 0 && year % 100 != 0) || (year % 100 == 0 && year % 400 == 0)) {
      lastday = year + '-' + month + '-' + 29;
    } else {
      lastday = year + '-' + month + '-' + 28;
    }
  } else {
    lastday = year + '-' + month + '-' + 30;
  }
  var day = '';
  if (type == 's') {
    day = firstday;
  } else {
    day = lastday;
  }
  return day;
}
// getMonth(type,months)  //type为字符串类型，有两种选择，"s"代表开始,"e"代表结束，months为数字类型，不传或0代表本月，-1代表上月，1代表下月
// getMonth("s",1)  //得到下月第一天的yyyy-mm-dd格式日期
// getMonth("e",1)  //得到下月最后一天的yyyy-mm-dd格式日期
